Imaging inverse problems such as reconstruction, deblurring, super-resolution, inpainting, or denoising can be solved by assuming the target image is sparse in the wavelet domain. Orthogonal wavelet transforms are not shift-invariant; image features are processed differently depending on their position with respect to the wavelet grid, and this can result in blocking artifacts.
An early way to reduce blocking artifacts in image denoising was the use of parallel cycle spinning: process the image separately with a wavelet transform offset by multiple different shifts in all dimensions, then average the results. However this simple averaging is not justified mathematically and makes the method difficult to extend to other inverse problems. As a result additional techniques have been developed such as the utilization of undecimated redundant wavelet transforms in conjunction with a nested inner algorithm inside the main solver (e.g. Chambolle-Pock or Dykstra inside FISTA) to solve the proximal operation performed during reconstruction.
These conventional methods require the application of multiple shifted wavelet transforms at each iteration, which incurs an extra computational cost of at least a factor of 2 per image dimension. Additionally, exact undecimated wavelet methods also require storing the wavelet coefficients of the image, which again are larger than the image by a factor of 2 in every dimension. This becomes too large with large-dimension use-cases such as dynamic volumetric reconstruction (3D+T), motion-compensated imaging, multi-contrast imaging including flow or diffusion, etc. Accordingly, it is desired to produce a reconstruction technique which minimizes blocking artifacts while also being efficient from a memory and computational standpoint.